<?php

require_once 'metier/Evaluateur.php';
require_once 'db_ini.php';

// on récupère la liste des requêtes
$liste_requetes = array();
$requete = "SELECT DISTINCT intitule FROM requetes ORDER BY id";
	
$statement = getConnexion()->query($requete);
$results = array();
while ($row = $statement->fetch()) {
	array_push($liste_requetes, $row['intitule']);
}

$evaluateur = new Evaluateur($liste_requetes);
$statistiques = $evaluateur->getStatistics();

// On fait les moyennes de toutes les statistiques
$sommePrecisions = 0;
$sommePrecisions5 = 0;
$sommePrecisions10 = 0;
$sommePrecisions25 = 0;

$sommeRappels = 0;
$sommeRappels5 = 0;
$sommeRappels10 = 0;
$sommeRappels25 = 0;

foreach ($statistiques as $elem) {
	$sommePrecisions += $elem["precision"];
	$sommePrecisions5 += $elem["precision5"];
	$sommePrecisions10 += $elem["precision10"];
	$sommePrecisions25 += $elem["precision25"];
	
	$sommeRappels += $elem["rappel"];
	$sommeRappels5 += $elem["rappel5"];
	$sommeRappels10 += $elem["rappel10"];
	$sommeRappels25 += $elem["rappel25"];
}

$nbRequetes = count($statistiques);

$moyennePrecision = round( $sommePrecisions / $nbRequetes, 3 );
$moyennePrecision5 = round( $sommePrecisions5 / $nbRequetes, 3 );
$moyennePrecision10 = round( $sommePrecisions10 / $nbRequetes, 3 );
$moyennePrecision25 = round( $sommePrecisions25 / $nbRequetes, 3 );

$moyenneRappel = round( $sommeRappels / $nbRequetes, 3 );
$moyenneRappel5 = round( $sommeRappels5 / $nbRequetes, 3 );
$moyenneRappel10 = round( $sommeRappels10 / $nbRequetes, 3 );
$moyenneRappel25 = round( $sommeRappels25 / $nbRequetes, 3 );

$moyennes = array(
	"moyennePrecision" => $moyennePrecision,
	"moyennePrecision5" => $moyennePrecision5,
	"moyennePrecision10" => $moyennePrecision10,
	"moyennePrecision25" => $moyennePrecision25,
	
	"moyenneRappel" => $moyenneRappel,
	"moyenneRappel5" => $moyenneRappel5,
	"moyenneRappel10" => $moyenneRappel10,
	"moyenneRappel25" => $moyenneRappel25
);

echo json_encode(array(
	"statistiques" => $statistiques,
	"moyennes" => $moyennes
));
